package king.dominic.jlibrary.view;

import android.annotation.TargetApi;
import android.content.Context;
import android.os.Build;
import android.util.AttributeSet;
import android.webkit.WebView;

/**
 * Created by king on 2017/5/15.
 * OriginWebView
 */

public class OriginWebView extends WebView {
    private OnScrollChangeListener listener;

    public OriginWebView(Context context) {
        super(context);
    }

    public OriginWebView(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

    public OriginWebView(Context context, AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
    }

    @TargetApi(Build.VERSION_CODES.LOLLIPOP)
    public OriginWebView(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
        super(context, attrs, defStyleAttr, defStyleRes);
    }

    @Override
    protected void onScrollChanged(int l, int t, int oldl, int oldt) {
        super.onScrollChanged(l, t, oldl, oldt);
        if(listener==null)return;
//        float webcontent = getContentHeight() * getScale();// webview的高度
//        float webnow = getHeight() + getScrollY();// 当前webview的高度
//
//        if (Math.abs(webcontent - webnow) < 1) {
//            listener.onPageEnd(l, t, oldl, oldt);
//        } else if (getScrollY() == 0) {
//            listener.onPageTop(l, t, oldl, oldt);
//        } else {
            listener.onScrollChanged(l, t, oldl, oldt);
//        }
    }

    public void setOnScrollChangeListener(OnScrollChangeListener listener) {
        this.listener = listener;
    }

    public interface OnScrollChangeListener {
        void onPageEnd(int l, int t, int oldl, int oldt);

        void onPageTop(int l, int t, int oldl, int oldt);

        void onScrollChanged(int l, int t, int oldl, int oldt);
    }
}
